The present invention relates an identification method and apparatus for use in identifying components of a gaming device such as a slot machine, card game machine, keno machine and the like, and, in particular, identification for machine components using a non-erasable electronic memory or memory portion such as a memory with write-once or add-only characteristics.
Many current gaming machines are configured with electronic components, commonly mounted on one or more printed circuit boards (PCBs). Many such electronic components use programming or other information stored in memories. In at least one typical configuration, a gaming terminal or gaming machine will include a controller board, a communications board or module, and one or more so-called peripheral boards such as a display controller board, a currency acceptor board, a coin handler board, and the like. Typically one or more of the boards, such as, e.g., the game controller board, a processor (microprocessor) or other computer unit which often operates based on programming or other information (software or firmware) stored in a memory such as one or more electronically erasable programmable read-only memories (EEPROMS). Such software or firmware may be programmed or stored in the memory locations during the manufacturing or assembly of the gaming device. Additionally, software or firmware may be provided to replace or supplement the software or firmware in a gaming device which is in operation (in the field), e.g. to update the machine configuration (such as adding new features, new games and the like, and/or to correct programming errors). In either case, the new firmware or software is transferred or xe2x80x9cdownloadedxe2x80x9d from a source (which may be, e.g., a computer such as a workstation, personal computer, laptop computer, and the like) to the xe2x80x9ctargetxe2x80x9d memory in a particular gaming terminal or machine.
Although downloading from one computer to another is, in general, a process that is currently known, downloading software or firmware to components of gaming devices presents particular problems not readily addressed by conventional downloading techniques and apparatus.
One feature applicable to gaming device downloading is the stringent regulatory oversight and control exercised by gaming regulatory authorities in many jurisdictions. In many, and perhaps all, regulated gaming jurisdictions, downloading of software or firmware to a gaming terminal will not be permitted without some assurance that the new software or firmware will comply with local regulations. For example, a gaming regulatory authority in one jurisdiction may require assurance that downloading to, e.g., update bill acceptor software will result in a machine having bill acceptor software appropriate (and approved) for that jurisdiction (and will not, e.g., run the risk of inadvertently and/or intentionally downloading bill acceptor software that was approved in a different jurisdiction, or not at all).
It is also commonly found that gaming devices occur in a wide variety of configurations, such as employing numerous different types of processors, memories, game configurations, versions and types, peripheral hardware and software and the like. Additionally, owing to differences in manufacturing dates, maintenance history and the like, gaming devices are often encountered with a wide variety of different hardware and software components which may not be apparent (or may be discernable only with difficulty) from a visual inspection of the gaming device, its components or operation. For this reason, when it is desired to download software to a particular gaming terminal, it is typically necessary to select a particular software version for downloading, bearing in mind the types of software and hardware found on the particular gaming terminal, lest the newly-downloaded software is incompatible with the gaming terminal or results in operation which is not approved by a particular jurisdiction. Additionally, it is possible that the software or firmware which is to be downloaded is, in fact, already present on a particular gaming terminal so that the download process represents a waste of time and effort.
In typical previous situations, in order to download software or firmware to a gaming terminal, characteristics of the gaming terminal and/or its components were determined manually, such as by visually inspecting the components and/or running tests of diagnostics on a component in an attempt to determine characteristics such as the version or type of a particular board, the processor speed associated with a particular board, the version of software or hardware components, and the like. Such manual determination of characteristics has, in the past, typically required a significant investment of time, especially when a relatively large number of gaming terminals are being programmed or re-programmed, and, to make matters worse, the time investment is typically made by relatively highly-trained personnel who have the background and experience required to analyze the hardware/software components that are present. Such investment of time by relatively highly-trained personnel represents a significant expense involved in downloading information which, owing at least partly to the regulatory environment found for gaming devices, was previously believed to be largely unavoidable. Furthermore, it has been found that even relatively highly-trained personnel have a undesirably high error rate when attempting to determine characteristics needed for a download, which may lead to inoperability or improper operation of a gaming device, violation of gaming jurisdiction laws or rules and may require an additional investment of time to detect and/or correct such errors.
In addition to a downloading context, identification of gaming device components or component characteristics may be useful in the context of gaming device maintenance, service or warranty fulfillment. For example, when determining whether a repair of a gaming terminal is covered by a warranty, it may be necessary to determine when the gaming terminal was manufactured or when one of the components was manufactured or last repaired or revised.
Another feature of many gaming devices which affects the manner in which revisions of software or firmware (or hardware) can or should be performed is the fact that gaming devices are often configured to dispense money so that there is a potential for modifications or downloads to be intentionally performed in an unauthorized fashion in such a manner as to create unauthorized or improper payouts. This is a potential which is typically not present in many other types of downloads from one computer to another. Accordingly, it is important, not only to gaming regulatory authorities but also casinos or other game operators, to achieve a level of confidence that, not only will inadvertent (e.g. cross-jurisdictional) downloads be avoided, but there are procedures in place to avoid or prevent intentional or unauthorized downloads.
Accordingly, it would be advantageous to provide a method and apparatus for downloading by which the characteristics of a gaming terminal needed to avoid inadvertent or intentional improper downloads can be determined substantially automatically, i.e. while reducing, or, preferably, eliminating the need for manual characteristic determination, visual inspection of machines, their components or operation and the like. It would be particularly advantageous to provide a download process which can obtain such gaming terminal or gaming terminal component characteristics entirely automatically, i.e. using only computers or other machines and without the need for any human input or effort to accomplish such determination of characteristics. It would further be advantageous to provide such a system and method which would reduce or eliminate the potential for errors in, or unauthorized tampering with, the identification system.
The present invention includes providing gaming terminal or gaming terminal components with information usable for characterizing gaming terminal components, which is electronically stored in a memory or portion of memory which is add-only memory (AO) or one-time programmable (OTP) memory. By storing, in such memory, information which either uniquely identifies a component or identifies characteristics of a component, it is possible to configure a download system which can automatically obtain the information needed to perform a download while achieving a level of security required to make such automatic download feasible in view of the requirements of gaming regulators and/or game operators. In one embodiment, a game controller card and a plurality of peripheral cards are each provided with certain memory locations which contain information in a fashion that such information, as a practical matter, cannot be erased or changed. Such memory locations can be used to store, e.g., a unique serial number or other unique identifier, hardware characteristic information such as processor type or speed, vendor identification, date of manufacture, and the like. In this way, before downloading information to a gaming terminal, it is possible to automatically (substantially without human intervention or effort) verify that the download will be proper, such as to verify that the jurisdiction for which the gaming terminal is configured (or where the casino or other purchaser is located) is the same as the jurisdiction for which the new software has been approved, to verify that the clock speed and/or data transfer speed for which the new software is designed (or at which the download is to take place) is compatible with the clock speed of the gaming terminal or its component, that the software to be downloaded is known to be compatible with other software and/or hardware on the gaming terminal that will remain in place, and the like.